package service;

import java.io.Serializable;


/**
 * Represente un fichier par son MD5 et son nom.
 */
public class Fichier implements Serializable {
	// ATTRIBUTS
	private String md5;
	private String nom_fichier;
	
	
	// CONSTRUCTEURS
	public Fichier(String chemin_fichier) {
		this.md5 = Gestionnaire_Fichier.getMd5(chemin_fichier);
		String[] tmp = chemin_fichier.split("\\\\");
		this.nom_fichier = tmp[tmp.length-1];
	}
	
	public Fichier(String chemin_fichier, String md5) {
		this(chemin_fichier);
		this.md5 = md5;
	}
	
	
	// ACCESSEURS
	public String getMd5() { return this.md5; }
	
	public String getNomFichier() { return this.nom_fichier; }
	
	
	// METHODES
	@Override
	public boolean equals(Object fichier) {
		if(fichier != null) {
			if(this.nom_fichier.equals(((Fichier)fichier).getNomFichier())) {
				if(this.md5 == ((Fichier)fichier).getMd5()) {
					return true;
				}
			}
		}
		return false;
	}
	
	@Override
	public String toString() {
		//return this.nom_fichier + " - " + this.md5;
		return this.nom_fichier;
	}
}
